Kafka REST Proxy是Confluent的一个组件,它提供了访问Kafka集群的RESTful接口。对于一些暂不支持Kafka的平台或编程语言来说,可以使用Kafka REST Proxy来发送和消费消息,查看集群状态和执行集群管理命令。
安装
- 要求Java版本 >= 1.7 
启动
- cd confluent-<version>/ 
- 配置 - 修改etc/kafka-rest/kafka-rest.properties的zookeeper.connect为Kafka的zookeeper地址
- 因为我的应用并不需要发送/消费Avro格式的消息,也就不需要Schema Registry,所以将etc/kafka-rest/kafka-rest.properties的schema.registry.url配置项注释掉
 
- 启动,bin/kafka-rest-start etc/kafka-rest/kafka-rest.properties 
发送JSON消息
| 1 | curl -X POST -H "Content-Type: application/vnd.kafka.json.v1+json" \ | 
发送的消息体必须是key为records的JSON,每个record可以有key和value属性,其中value是必须的
消费JSON消息
创建Consumer实例
| 1 | curl -X POST -H "Content-Type: application/vnd.kafka.v1+json" \ | 
使用已创建的Consumer实例消费消息1
2$ curl -X GET -H "Accept: application/vnd.kafka.json.v1+json" \     http://localhost:8082/consumers/my_consumer_group/instances/my_consumer_instance/topics/jsontest
  [{"key":null,"value":{"foo":"bar"},"partition":0,"offset":0}]
删除Consumer实例1
curl -X DELETE \     http://localhost:8082/consumers/my_consumer_group/instances/my_consumer_instance
